package com.dyna.constants;

import com.dyna.enums.ApplicationNameEnum;

/**
 * redis key
 */
public interface RedisKeyConstant {

    /** redis限流 */
    String REDIS_LIMITER_KEY = "redis_limiter_";

    /** redis延迟消息缓存key */
    String DELAY_QUEUE_KEY = "delay:queue";

    /** -----------------------------------digit相关key------------------------------------ */
    String PROJ_INCR_KEY = ApplicationNameEnum.DIGIT.getName() + ":proj_incr_key";


    /** -----------------------------------auth相关key------------------------------------ */
    String USER_INFO_KEY = ApplicationNameEnum.AUTH.getName() + ":login_user_info:";

    /** 验证码key */
    String CAPTCHA_PRE_KEY = ApplicationNameEnum.AUTH.getName() + ":captcha:";

    /** 登录错误次数 */
    String LOGIN_ERROR_NUM_KEY = ApplicationNameEnum.AUTH.getName() + ":login_error_num:";

    /** -----------------------------------千岛相关key------------------------------------ */
    String ITEM_LIST_KEY = ApplicationNameEnum.QIANDAO.getName() + ":item_list:";

    /**
     * 访问令牌的缓存
     * <p>
     * KEY 格式：oauth2_access_token:{token}
     * <p>
     * 由于动态过期时间，使用 RedisTemplate 操作
     */
    String OAUTH2_ACCESS_TOKEN = "oauth2_access_token:%s";

}
